#ifndef REPRODUCTORWAV_H_
#define REPRODUCTORWAV_H_
#include <string>
#include "SDL2/SDL.h"
#include "SDL2/SDL_mixer.h"
#include <iostream>
#include <map>
#include <sstream>

#define SONIDO_PREDETERMINADO 0

typedef int t_sonido;

class ReproductorWav {
  public:
    ReproductorWav();
    virtual ~ReproductorWav();

    static void iniciar();
    bool setAudio(t_sonido sonido, std::string path);
    Mix_Chunk* getAudio(t_sonido sonido);
    bool addAudio(t_sonido sonido, std::string path);
    bool reproducir(t_sonido sonido=SONIDO_PREDETERMINADO);
    bool cambiarMute();
    bool muteActivado();
	
  private:
    static bool iniciado;
    static unsigned int canal;
    bool mute;
    int canal_id;
    std::map<t_sonido, Mix_Chunk*> sonidos;
};

#endif
